package AccionBoton;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;

import modelUtil.Util;
import paginas.PaginaEntornoCreacionTeclados;
import plantilla.BotonTO;
import plantilla.PlantillaTO;
import util.PopUpBorradoCeldas;

@SuppressWarnings("unused")
public class AccionBorradoCeldas implements ActionListener{
	
	private String _dimension;
	private PaginaEntornoCreacionTeclados _frame;
	private String _celdas;
	private String texto;
	private PopUpBorradoCeldas _ventana;
	
	public AccionBorradoCeldas(String dimension, String celdas, PaginaEntornoCreacionTeclados frame, PopUpBorradoCeldas ventana){
		
		_dimension = dimension;
		_celdas = celdas;
		_frame = frame;
		_ventana = ventana;
		
		
		
	}
	
	
	public void actionPerformed(ActionEvent e){
		
		PlantillaTO tecladoTO = _frame.getTecladoTO();
		int filas = new Integer(tecladoTO.getNumeroFilas()).intValue();
		int cols = new Integer(tecladoTO.getNumeroColumnas()).intValue();
		int nuevasFilas = new Integer(_celdas).intValue();
		int nuevasCols = new Integer(_celdas).intValue();
		List <BotonTO> botones = tecladoTO.getListaBotones();
		int limite = botones.size();
		List<Integer> indices = new ArrayList<Integer>();
		if(_dimension.equals("filas")){

			for(int i = 0; i<botones.size();i++){

			if(new Integer(botones.get(i).getPosicionFila()).intValue()>(nuevasFilas - 1)){
				botones.remove(i);
				i--;
			}
				
				
			}
			
				for(int i = 0; i<botones.size();i++){
				
				if(new Integer(botones.get(i).getPosicionColumna()).intValue()==(cols - 1)){
					if(new Integer(botones.get(i).getPosicionFila()).intValue()==(nuevasFilas - 1)){
						
						botones.remove(i);
						i--;
					}
					
					
				}
				}
				BotonTO b2 = Util.botonSalir(nuevasFilas-1, cols -1);
				botones.add(b2);
			

				
			tecladoTO.setListaBotones(botones);
			tecladoTO.setNumeroFilas(new Integer(nuevasFilas).toString());
			_frame.setTecladoTO(tecladoTO);
			_frame.setGuardado(false);
			
			
		}else{
			
			if(_dimension.equals("columnas")){
				
				for(int i = 0; i<botones.size();i++){
					
					if(new Integer(botones.get(i).getPosicionColumna()).intValue()>(nuevasCols - 1)){
						
						botones.remove(i);
						i--;
					}
						
					}
				for(int i = 0; i<botones.size();i++){
				
				if(new Integer(botones.get(i).getPosicionColumna()).intValue()==(nuevasCols - 1)){
					if(new Integer(botones.get(i).getPosicionFila()).intValue()==(filas - 1)){
						
						botones.remove(i);
						i--;
					}
					
					
				}
				}
				BotonTO b2 = Util.botonSalir(filas-1, nuevasCols -1);
				botones.add(b2);
				
				tecladoTO.setListaBotones(botones);
				tecladoTO.setNumeroColumnas(new Integer(nuevasCols).toString());
				_frame.setTecladoTO(tecladoTO);
				_frame.setGuardado(false);
				
			}
			
			
		}
		_ventana.dispose();
	}

	
}
